﻿using System.Collections.Generic;
using System.ServiceModel;
using Kobets.Automation.Chimera.Common.Models;

namespace Kobets.Automation.Chimera.Common.Contracts
{
    [ServiceContract]
    public interface IAgentContract
    {
        [OperationContract]
        Enums.AgentStatus GetStatus();

        [OperationContract]
        Agent GetSdi();

        [OperationContract]
        void RunSteps(IEnumerable<Step> steps);

        [OperationContract]
        void StopExecution();

        [OperationContract]
        void Restart();

        [OperationContract]
        Step GetCurrentlyRunningStep();

        [OperationContract]
        void SetController(string controllerName);
    }
}
